fix(spawn): default Codex workers to Standard service tier - #62
Open
withally wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Intent
Make Standard the Codex service-tier default for every new general Firstmate Codex worker on the live fork main, while keeping Fast or Priority reachable only for a captain-named conversation outside the general worker launcher or an explicit exact raw dispatch. Before changing tracked machinery, verify the real mechanism and separate the initiating Fast toggle and shared Codex config persistence, the masking persistence and resume/fork/subagent inheritance of already-running threads, and the visible Fast worker symptom; disconfirm launch-argument, dispatch-config, and app-server alternatives. Apply the smallest robust tracked-machinery fix only at the Codex launch boundary, without changing another harness, touching the fresh-upstream integration branch, interrupting, relaunching, or changing the tier of any running worker, or adding machinery beyond what the mechanism requires. Prove by observed service tier using isolated throwaway launches that a new ordinary main-home-path child starts Standard, a new secondmate-path child starts Standard, and one explicit exact dispatch starts Priority. Add portable executable-interface regressions for the default and exception. Report the root cause, exact coverage and exclusions, and any remaining live Fast conversation. Ship one no-mistakes PR to fork main and reach CI-ready green without merging.
What Changed
service_tier="default"(Standard) via an added-cflag on every Codex worker launch template inbin/fm-spawn.sh, for both the general and secondmate paths, so a new worker no longer inherits a captain conversation's persisted Fast/Priority setting.Risk Assessment
✅ Low: A minimal, well-tested one-flag change at the Codex launch boundary that pins Standard tier for both general worker paths while preserving the raw-dispatch Priority escape hatch, using the same proven escaping as the adjacent notify flag.
Testing
Ran the two targeted shell suites that pin firstmate's literal codex launch command via a fake tmux pane (both EXIT 0), and captured a CLI transcript by invoking the real launch_template for ordinary main-home-path and secondmate children — both now pin service_tier="default" (Standard), while the exact raw dispatch passes service_tier="priority" through unchanged. Confirmed the regression reproduces on the base commit, where codex launches carried no service_tier and would inherit the persisted Fast/shared-config setting. Evidence is a CLI/launch-command transcript (executable interface), appropriate for this CLI-only change with no rendered UI surface.
Evidence: Codex service-tier launch-boundary evidence (before/after + Priority exception)
Evidence: After-fix codex launch commands (ordinary + secondmate)
Pipeline
Updates from git push no-mistakes
✅ **intent** - passed
✅ No issues found.
✅ **Rebase** - passed
✅ No issues found.
✅ **Review** - passed
✅ No issues found.
✅ **Test** - passed
✅ No issues found.
bash tests/fm-spawn-dispatch-profile.test.sh→ EXIT 0 (incl.codex receives model and effort while pinning the Standard service tier,active crew-dispatch profile does not block secondmates and Codex stays Standard,an exact raw Codex launch can still request Priority)bash tests/fm-secondmate-harness.test.sh→ EXIT 0 (explicit-harness-no-tokens now asserts the Standard service-tier default in codex launch)Directly invokedlaunch_template codex shipandlaunch_template codex secondmatefrom shipped bin/fm-spawn.sh — both emitservice_tier="default"Reproduced regression: same calls on base commit 35d1bd2 emit no service_tier flag (grep -c service_tier = 0)✅ **Document** - passed
✅ No issues found.
✅ **Lint** - passed
✅ No issues found.
✅ **Push** - passed
✅ No issues found.